Information processing apparatus, information processing method, and recording medium

ABSTRACT

An information processing apparatus includes a reducing unit that performs reduction processing to reduce a position or a posture. The information processing apparatus further includes a correcting unit that performs correction processing to correct a reduction error that is caused by the reduction processing, based on temporal change data indicating changes over time relating to the position or the posture.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a U.S. National Phase of International PatentApplication No. PCT/JP2018/019566 filed on May 22, 2018, which claimspriority benefit of Japanese Patent Application No. JP 2017-149956 filedin the Japan Patent Office on Aug. 2, 2017. Each of the above-referencedapplications is hereby incorporated herein by reference in its entirety.

FIELD

The present disclosure relates to an information processing apparatus,an information processing method, and a recording medium.

BACKGROUND

A technique of estimating a position and a posture of a camera in realspace based on a captured image acquired by imaging by a camera has beenknown. Data of the estimated position and posture is used, for example,for display in AR (augmented reality) technology or VR (virtual reality)technology.

Estimated positions and postures can include errors. If display isperformed based on a position and a posture including an error,inconsistency can occur. For this, correction of an error for anestimated posture has also been performed (for example, PatentLiterature 1 below).

CITATION LIST Patent Literature

Patent Literature 1: JP-A-2011-223580

SUMMARY Technical Problem

However, because correction of errors by the technique as describedabove is not based on human perceptual characteristics, for example,when display is performed based on a position and a posture acquired bycorrection, there is a possibility of causing user discomfort.Therefore, there has been a demand for performing correction relating toa position or a posture considering human perceptual characteristics.

Solution to Problem

According to the present disclosure, an information processing apparatusis provided that includes: a reducing unit that perform reductionprocessing to reduce a change of any one of a position and a posture;and a correcting unit that performs correction processing to correct areduction error that is caused by the reduction processing, based ontemporal change data indicating changes over time relating to any one ofthe position and the posture.

Moreover, according to the present disclosure, an information processingmethod is provided that includes: performing reduction processing toreduce a change of any one of a position and a posture; and performingcorrection processing to correct a reduction error that is caused by thereduction processing, based on temporal change data indicating changesover time relating to any one of the position and the posture.

Moreover, according to the present disclosure, a computer-readablerecording medium is provided that stores a program to implement: afunction of performing reduction processing to reduce a change of anyone of a position and a posture; and a function of performing correctionprocessing to correct a reduction error that is caused by the reductionprocessing, based on temporal change data indicating changes over timerelating to any one of the position and the posture.

Advantageous Effects of Invention

As described above, according to the present disclosure, becausecorrection relating to a position and a posture is performed consideringhuman perceptual characteristics, it is possible to reduce userdiscomfort caused by display based on the position and the posture.

Note that the above effect is not necessarily limited, and either one ofeffects described in the present specification, or other effects thatcan be understood from the present specification can be produced,together with the above effect, or instead of the above effect.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating an example of a configuration ofan information processing apparatus 1 according to an embodiment of thepresent disclosure.

FIG. 2 is a block diagram illustrating an example of a configuration ofa filter unit 140 according to the same embodiment.

FIG. 3 is a flowchart illustrating an operation example of theinformation processing apparatus according to the same embodiment.

FIG. 4 is a flowchart illustrating a flow of processing at step S14.

FIG. 5 is a block diagram illustrating an example of a hardwareconfiguration of the information processing apparatus 1 according to thesame embodiment.

DESCRIPTION OF EMBODIMENTS

Exemplary embodiments of the present disclosure will be described indetail below, referring to the accompanying drawings. In the presentapplication and drawings, duplicated explanation is omitted by usingcommon reference signs for components having substantially the samefunctional configuration.

Moreover, in the present application and drawings, components havingsubstantially the same functional configuration may be distinguished byadding different alphabetic signs at the end of the common referencesign. However, when it is not necessary to particularly distinguishrespective components having substantially the same functionalconfiguration, only the common reference sign is used.

Description will be given in following order.

<<1. Background>>

<<2. Configuration>>

-   -   <2-1. Configuration of Information processing apparatus>    -   <2-2. Configuration of Filter Unit>

<<3. Operation>>

<<4. Modifications>>

-   -   <4-1. First Modification>    -   <4-2. Second Modification>    -   <4-3. Third Modification>

<<5. Hardware Configuration Example>>

<<6. Conclusion>>

1. BACKGROUND

Before explaining about the information processing apparatus accordingto one embodiment of the present disclosure, the background to creationof the information processing apparatus according to one embodiment ofthe present disclosure will be described.

In recent years, technologies called AR (augmented reality) technologyand VR (virtual reality) technology have been receiving attention. Forexample, when a head-mounted display (hereinafter, also referred to as“HMD”) that is mounted on a head of a user is used as a display devicein the AR technology and the VR technology, display of the HMD can beperformed based on a position and a posture of the HMD in real space.

For example, by the AR technology, display making the user feel as if avirtual object is present in real space is possible by determining aposition and a posture of the virtual object to be displayed on the HMDbased on a position and a posture of the HMD in real space. Moreover, bythe VR technology, display making the user feel as if the user is invirtual space is possible by changing (for example, changing aviewpoint) virtual space to be displayed on the HMD according to aposition and a posture of the HMD in real space.

The position and the posture of the HMD can be acquired by variousmethods and, for example, may be estimated based on a captured imagethat is acquired by imaging by a camera mounted on the HMD. In thiscase, for example, by detecting feature points from a captured imageacquired by imaging, the position and the posture can be estimated basedon matching of the feature points. The feature point matching can beperformed by comparing feature amounts of the feature points between thedetected feature points and feature points detected in a previous frame,or and feature points included in an environmental map prepared inadvance, or the like.

Data of the position and posture estimated as described above caninclude an error. As a result, fluctuations can occur in a display onthe HMD, for example, according to the error included in the data of theestimated position and posture. For example, in the AR technology, aposition and a posture of a virtual object displayed on the HMD canfluctuate according to the error. Furthermore, in the VR technology,entire virtual space displayed on the HMD can fluctuate. Suchfluctuations become a cause of user discomfort. For example, when avirtual object is to be displayed as it is in contact with an actualobject, if a position and a posture of the virtual object fluctuate dueto fluctuations of the position and the posture, there is a possibilitythat the user feels as if the virtual object moves apart from the actualobject.

Moreover, when the position and the posture are estimated incrementallybased on captured images chronologically acquired, errors can beaccumulated. Moreover, the estimation accuracy of the position and theposture is susceptible to the number of detected feature points, ormatched feature points and, for example, when feature points are notdetected in sufficient quantity, or when the number of matched featurepoints is small, the estimation accuracy tends to decrease.

Because of this, for example, when it shifts from a state in which thenumber of feature points detected from an image or matched featurepoints is small to a state in which the number is large, there is a casein which data of estimated position and posture changes abruptly eventhough the position and the posture of the HMD have not significantlychanged actually. In such a case, a significant change can occur in adisplay on the HMD according to the change of the data of the estimatedposition and posture.

For example, in the AR technology, when the data of the estimateposition and posture abruptly changes, the position and the posture of avirtual object displayed on the HMD can change abruptly. Moreover, inthe VR technology, when virtual space displayed on the HMD can changeabruptly. The abrupt change of the data of the estimated position andposture described above is a result caused by improved estimationaccuracy, and is a change to reduce errors and, therefore, it isconsidered that a display performed after the change is a moreconsistent display, either in a case of the AR technology and the VRtechnology. However, an abrupt change caused in a display before andafter such a change can cause user discomfort.

Thus, in view of the above circumstances, the present embodiment hasbeen achieved. According to the present embodiment, by performingcorrection relating to a position and a posture based on humanperceptual characteristics, it is possible to reduce user discomfortcaused by a display based on a position and a posture in the ARtechnology, the VR technology, and the like. In the following, oneembodiment of the present disclosure having such an effect will bedescribed in detail.

2. CONFIGURATION

<2-1. Configuration of Information Processing Apparatus>

A configuration of an information processing apparatus according to oneembodiment of the present disclosure will be described, referring toFIG. 1. FIG. 1 is a block diagram illustrating an example of aconfiguration of an information processing apparatus 1 according to thepresent embodiment. As illustrated in FIG. 1, the information processingapparatus 1 according to the present embodiment includes a communicationunit 20, an imaging unit 30, a display unit 40, a storage unit 50, and acontrol unit 100. Although an example in which the informationprocessing apparatus 1 is an HMD is described in the following, thepresent embodiment is not limited to the example, and other exampleswill be described as modifications later.

The communication unit 20 is a communication module to performtransmission and reception of data with other devices in awired/wireless manner. The communication unit 20 communicates with anexternal device directly or through a network access point by wirelesscommunication, for example, by a scheme, such as a wired LAN (local areanetwork), a wireless LAN, Wi-Fi (wireless fidelity, registeredtrademark), infrared communication, Bluetooth (registered trademark),and a near-field/non-contact communication.

The imaging unit 30 acquires a captured image by imaging, to provide tothe control unit 100. The captured image acquired by the imaging unit 30is not limited to a still image, but can include a chronological movingimage. Moreover, the imaging unit 30 includes, respective parts of anlens system constituted of an imaging lens, an aperture, a zoom lens, afocus lens, and the like, a driving system that causes the lens systemto perform a focus operation and a zoom operation, a solid-state imagingdevice array that subjects imaging light acquired by the lens system tophotoelectric conversion, to generate an imaging signal, and the like.The solid-state imaging device array may be implemented by, for example,a CCD (charge coupled device) sensor array, or a CMOS (complementarymetal oxide semiconductor) sensor array. Furthermore, the imaging unit30 may be provided in plurality in the information processing apparatus1.

The display unit 40 is controlled by the control unit 100 describedlater, to perform a display operation. The display unit 40 isimplemented by a lens unit (an example of a transmission display unit)that performs display, for example, by using a hologram opticaltechnique, a liquid crystal display (LCD) device, an OLED (organic lightemitting diode) device, and the like. Moreover, the display unit 40 maybe of a transmission type, a semi-transmission type, or ofnon-transmission type.

The storage unit 50 stores a program for the control unit 100 describedlater to perform respective functions and parameters. Furthermore, thestorage unit 50 may function as a buffer that temporarily stores datarelating to a position and a posture of a predetermined period, inaccordance with the control by the control unit 100 described later.

The control unit 100 functions as an arithmetic processing device and acontrol device, and controls the overall operation in the informationprocessing apparatus 1 according to various kinds of programs. Moreover,the control unit 100 according to the present embodiment functions as anestimating unit 120, a filter unit 140, and a display control unit 160as illustrated in FIG. 1.

The estimating unit 120 estimates a position and a posture of theinformation processing apparatus 1 in real space based on the capturedimage acquired by imaging by the imaging unit 30, and acquires datarelating to a position and a posture as an estimation result. Note thatthe information processing apparatus 1 is assumed to be mounted on thehead of a user in the present embodiment and, therefore, the positionand the posture estimated by the estimating unit 120 are regarded as aposition and a posture of the head of the user. Estimation of a positionand a posture by the estimating unit 120 can be performed by variousmethods, but may be performed, for example, by a method based onmatching of feature points detected from a captured image as describedabove.

The data relating to a position and a posture acquired by the estimatingunit 120 may be data relating to a position and a posture in athree-dimensional coordinate system that is set in advance, associatingwith real space, or may be data relating to a position and a posture ina three-dimensional coordinate system set by the information processingapparatus 1. Furthermore, the data relating to a position and a postureacquired by the estimating unit 120 may be data relating to a relativeposition with respect to a predetermined actual object that exists inreal space, and a posture.

Moreover, the data relating to a position and a posture acquired by theestimating unit 120 as an estimation result is input to the filter unit140 chronologically.

The filter unit 140 performs correction based on human perceptualcharacteristics with respect to the data relating to a position and aposture chronologically input from the estimating unit 120. The filterunit 140 outputs the data relating to a position and a posture subjectedto the correction to the display control unit 160. Details of the filterunit 140 will be described later, referring to FIG. 2.

The display control unit 160 controls display by the display unit 40based on the data relating to a position and a posture subjected tocorrection, which is output data of the filter unit 140. For example,the display control unit 160 may control display such that a virtualobject is visually recognized at a predetermined position in real space,based on the data relating to a position and a posture. When the displayunit 40 is a non-transmission type, the display control unit 160 maycontrol display such that the virtual object is visually recognized at apredetermined position in real space by superimposing the virtual objecton a captured image of real space acquired by the imaging unit 30.Moreover, the display control unit 160 may display virtual space basedon the data relating to a position and a posture.

Note that data relating to a virtual object or virtual space to bedisplayed by the display control unit 160 may be acquired from, forexample, the storage unit 50, or may be acquired from another devicethrough the communication unit 20.

A configuration of the information processing apparatus 1 according tothe present embodiment has been specifically described as above, but theconfiguration of the information processing apparatus 1 according to thepresent embodiment is not limited to the example illustrated in FIG. 1.For example, the information processing apparatus 1 may include a sensorthat senses information around the information processing apparatus 1 inaddition to the imaging unit 30, or a part of the functions of thecontrol unit 100 may be present in another device connected through thecommunication unit 20.

<2-2. Configuration of Filter Unit>

Subsequently, a more detail configuration example of the filter unit 140illustrated in FIG. 1 will be described in the following. FIG. 2 is ablock diagram illustrating an example of a configuration of the filterunit 140. As illustrated in FIG. 2, the filter unit 140 has functions asa lowpass filter unit 141, a cutoff-frequency control unit 142, a changedetecting unit 143, a reducing unit 144, a subtracting unit 145, and acorrecting unit 146.

As described above, to the filter unit 140, the data relating to aposition and a posture, which is an estimation result of the estimatingunit 120, is chronologically input. The chronological data input to thefilter unit 140 may be a multidimensional signal relating to a positionand a posture. Moreover, the functions of the filter unit 140 describedbelow may be implemented by convolution of a signal, or may beimplemented by a method, such as Kalman filter and weighed means.

In the following, an example in which a signal relating to a positionand a posture input to the filter unit 140 is a displacement signalindicating a displacement from a predetermined reference point (forexample, the origin in the three-dimensional coordinate system if it isa position) will be described. However, to the filter unit 140, a speedsignal (an example of speed data) indicating changes over time of aposition and a posture may be input, or an acceleration signalindicating an acceleration of a position and a posture may be input.Note that in the present application, denominations, displacement,speed, and acceleration include angular displacement (angle), angularspeed, and angular acceleration, respectively.

Furthermore, the filter unit 140 is also capable of acquiring othersignals by subjecting either one kind of signals out of the inputdisplacement signal, speed signal, and acceleration signal to processingof differentiation or integration by a not shown differentiator orintegrator. Therefore, the filter unit 140 may be designed appropriatelyaccording to a type of signals input to the filter unit 140 from theestimating unit 120. Moreover, hereinafter, a signal input to the filterunit 140 from the estimating unit 120, or a displacement signal, a speedsignal, or an acceleration signal, which is the input signal notsubjected to any processing other than differentiation or integration,are referred to as input displacement signal, input speed signal, orinput acceleration signal, respectively in some cases.

The signal relating to a position and a posture may include, forexample, a three-dimensional signal relating to a position and athree-dimensional signal relating to a posture. For example, when thedata of a position is acquired as data in three-dimensional space withthree directions of an X direction, a Y direction, and a Z direction asbases, the three-dimensional signal relating to a position may be asignal indicating a position in the respective three directions of the Xdirection, Y direction, and the Z direction. Moreover, in this case, thethree-dimensional signal relating to a posture may be, for example, asignal indicating a rotation angle about the respective three directionsof the X direction, the Y direction, and the Z direction as a centeraxis.

Furthermore, the filter unit 140 may perform processing with respect tosignal of a predetermined period (predetermined number of frames).Moreover, the filter unit 140 may perform processing for each dimensionindependently, with respect to a multidimensional signal relating to aposition and a posture. In the following, a common part out of theprocessing with respect to signals of respective dimensions will bedescribed without distinguishing them.

Lowpass Filter Unit

The lowpass filter unit 141 performs lowpass filtering to remove acomponent (high frequency component) higher than a cutoff frequency setby the cutoff-frequency control unit 142 described later from an inputspeed signal. Furthermore, the lowpass filter unit 141 outputs a speedsignal (having only components lower than the cutoff frequency) fromwhich the high frequency component is removed to the reducing unit 144.Moreover, the speed signal output from the lowpass filter unit 141 issubject to integration by the not shown integrator, and then input tothe subtracting unit in a form of a displacement signal.

Note that when the input displacement signal is input from theestimating unit 120 to the filter unit 140, the input speed signal thatis obtained by subjecting the input displacement signal to primarydifferentiation by the differentiator not shown may be input to thelowpass filter unit 141.

With this configuration, fluctuations of a position and a posture can besuppressed, and as a result, fluctuations of display can be reduced.

Cutoff-Frequency Control Unit

The cutoff-frequency control unit 142 controls a cutoff frequency usedby the lowpass filter unit 141 based on temporal change data indicatingchanges over time relating to a position or a posture.

In the example illustrated in FIG. 2, the cutoff-frequency control unit142 determines a cutoff frequency by using data indicating changes overtime of output data that is output by the correcting unit 146 (that is,output by the filter unit 140) in a form of a displacement signal of aposition and a posture, as temporal change data. The cutoff-frequencycontrol unit 142 may control a cutoff frequency based on the temporalchange data according to a dimension corresponding to a dimensionprocessed by the lowpass filter unit 141.

Human perception is influenced by a traveling speed of himself/herself,and there is a tendency that as the traveling speed increases, forexample, fluctuations with respect to the traveling direction are lessperceived as discomfort. Accordingly, the cutoff-frequency control unit142 may control the cutoff frequency such that the cutoff frequency ishigh when the temporal change (speed) is large, and that the cutofffrequency is low when the temporal change (speed) is small. With thisconfiguration, it is possible to reduce only fluctuations apt to beperceived as discomfort by the user.

Moreover, the cutoff-frequency control unit 142 may control the cutofffrequency further based on a dimension of a signal to be processed.Human perception is influenced by a traveling direction ofhimself/herself, and has a tendency to be less sensitive, for example,to fluctuations in the traveling direction of himself/herself than tofluctuations in a left-and-right direction and an up-and-down direction.Accordingly, the cutoff-frequency control unit 142 may control thecutoff frequency such that a cutoff frequency for a signal of adimension corresponding to traveling in a front-and-back direction ishigher than a cutoff frequency for signals of dimensions correspondingto the left-and-right direction and the up-and-down direction. With thisconfiguration, it is possible to reduce only fluctuations apt to beperceived as discomfort by the user.

Change Detecting Unit

The change detecting unit 143 detects a change section in which anabrupt change has occurred at an estimated position and posture. Theabrupt change may be, for example, such a change that a spike signal isgenerated in an input speed signal. Detection of the change section bythe change detecting unit 143 can be performed by various methods. Forexample, the change detecting unit 143 may detect a section including avalue larger than a threshold in an input speed signal that is acquiredby subjecting an input speed signal to secondary differentiation. Notethat the change detecting unit 143 may use different thresholdsaccording to temporal change data, and may use, for example, a largerthreshold as the temporal change (speed) becomes larger.

Reducing Unit

The reducing unit 144 acquires reduction data in which an abrupt changeis reduced by performing reduction processing to reduce an abrupt changeof an estimated position and posture. For example, the reducing unit 144may acquire a speed signal subjected to reduction processing to bring avalue included in a change section detected by the change detecting unit143 closer to 0, out of a speed signal input by the lowpass filter unit141, from which a high frequency component is removed, as the reductiondata. For example, the reducing unit 144 may replace a value included inthe change section with a predetermined value (for example, 0).

By the reduction processing as described above, the reducing unit 144can reduce an amount of change of a position and a posture as a resultof it. Note that the reducing unit 144 may perform the reductionprocessing according to the temporal change data, and for example, maydecrease the intensity of the reduction processing as the temporalchange (speed) increases.

With this configuration, an abrupt change of an estimated position and aposture is reduced, and an abrupt change in display is also reduced. Asa result, it becomes possible to reduce user discomfort.

The reduction data acquired by the reducing unit 144 is a speed signal,and is integrated, for example, by an integrator not shown, and theninput to the subtracting unit 145 and the correcting unit 146 in a formof a displacement signal.

Subtracting Unit

The subtracting unit 145 acquires a reduction error generated by thereduction processing performed by the reducing unit 144, based on thespeed data output from the lowpass filter unit 141 and the reductiondata acquired by the reducing unit 144. For example, the subtractingunit 145 may calculate (acquire) the reduction error, as a differencebetween the displacement signal that is acquired by integrating thespeed signal output from the lowpass filter unit 141 and the reductiondata that is input in a form of a displacement signal. The reductionerror acquired by the subtracting unit 145 is input to the correctingunit 146.

Correcting Unit

The correcting unit 146 acquires output data that is output by thefilter unit 140 by performing correction processing to correct thereduction error. For example, the correcting unit 146 may perform thecorrection processing by adding a correction value that is acquired bymultiplying a correction coefficient between 0 and 1 and the reductionerror together to the reduction data.

The correction processing performed by the correcting unit 146 is hereinreviewed. When the correction coefficient described above is 1, that iswhen the reduction error is added to the reduction data as it is, only adisplacement signal acquired by integrating the output of the lowpassfilter unit 141 is acquired, and an effect of the reduction processingby the reducing unit 144 is not obtained, leaving a possibility to causeuser discomfort. On the other hand, when the correction coefficient is0, the reduction error is not corrected, and data relating to a positionand a posture that are significantly different from original positionand posture is to be continuously output, and there is a possibilitythat inconsistency derived therefrom continues to be caused in a displayalso.

Considering the above, it is preferable that the correcting unit 146perform the correction processing with a correction coefficient close to0 so that the reduction error is not corrected too much when the user islikely to perceive discomfort by correction. Moreover, it is preferablethat the correcting unit 146 perform the correction processing with acorrection coefficient close to 1 so that the correction error iscorrected more intensely when the user is less likely to perceivediscomfort.

As described above, human perception is influenced by a traveling speedof himself/herself. Therefore, the correcting unit 146 may perform thecorrection processing based on the temporal change data. In the exampleillustrated in FIG. 2, the temporal change data may be data indicatingchanges over time of output data as described above.

The correcting unit 146 may perform the correction processing such thatthe reduction error is more intensely corrected as the temporal change(speed) becomes larger, based on the temporal change data. For example,the correcting unit 146 may perform the correction processing by using alarger (closer to 1) correction coefficient as the temporal changeincreases.

The output data acquired by the correction processing performed by thecorrecting unit 146 is output to the display control unit 160 as datarelating to a position and a posture after correction.

3. OPERATION

As above, the configuration example of the information processingapparatus 1 according to the present embodiment, and the configurationexample of the filter unit 140 included in the information processingapparatus 1 have been described. Subsequently, an operation example ofthe present embodiment will be described, referring to FIG. 3 and FIG.4. In the following, a flow of overall processing of the informationprocessing apparatus 1 will be described, referring to FIG. 3, and thena flow of processing relating to correction of data relating to aposition and a posture performed by the filter unit 140 will bedescribed, referring to FIG. 4.

FIG. 3 is a flowchart illustrating an operation example of theinformation processing apparatus 1 according to the present embodiment.As illustrated in FIG. 3, first, the imaging unit 30 acquires a capturedimage by imaging (S10). Subsequently, the estimating unit 120 of thecontrol unit 100 estimates a position and a posture of the informationprocessing apparatus 1 in real space based on the captured image (S12).

Subsequently, the filter unit 140 performs correction relating to theposition and the posture acquired at step S12 (S14). Note that theprocessing at this step S14 performed by the filter unit 140 will bedescribe later, referring to FIG. 4.

Subsequently, the display unit 40 perform display in accordance with adisplay control by the display control unit 160 based on the positionand posture corrected at step S14 (S16)

As above, the overall operation of the information processing apparatus1 according to the present embodiment has been described. Note that theprocessing at steps S10 to S16 in FIG. 3 may be repeated as appropriate.

FIG. 4 is a flowchart illustrating a flow of the processing at step S14illustrated in FIG. 3. As illustrated in FIG. 4, first, the lowpassfilter unit 141 performs lowpass filtering to remove a component higherthan the cutoff frequency (high frequency component) (S141). Note that acontrol of the cutoff frequency by the cutoff-frequency control unit 142may be performed at step S141.

Moreover, the change detecting unit 143 detects a change section inwhich an abrupt change has occurred in a position and a postureestimated at step S12 in FIG. 3 (S143). Subsequently, the reducing unit144 performs the reduction processing to reduce the abrupt change in theestimated position and posture (S145). As described above, the reductionprocessing can be performed in the change section that is detected atstep S143 in the signal acquired at step S145 from which the highfrequency component is removed.

Subsequently, the subtracting unit 145 calculates a reduction error, asa difference between the signal acquired at step S141 from which thehigh frequency component is removed and the signal acquired at step S145(S147).

Subsequently, the correcting unit 146 performs the correction processingto correct the reduction error calculated at step S147 (S149).

As above, the flow of processing relating to correction of data relatingto a position and a posture by the filter unit 140 has been described.Note that order of the processing at step S141 and step S143 may beopposite, or the processing at step S141 and step S143 may be performedin parallel.

4. MODIFICATIONS

As above, one embodiment of the present disclosure has been described.In the following, some modifications of the present embodiment will bedescribed. Note that the modifications described below may be appliedsingly to the present embodiment, or may be applied to the presentembodiment in combination. Moreover, the respective modifications may beapplied in place of the configuration described in the presentembodiment, or may be applied in addition to the configuration describedin the present embodiment.

<4-1. First Modification>

In the above description, an example in which the information processingapparatus 1 is an HMD that is mounted on the head of a user has beendescribed, but the present embodiment is not limited thereto. Forexample, the information processing apparatus 1 according to the presentembodiment may be a smartphone, a tablet terminal, or the like. In thiscase, the information processing apparatus 1 is, for example, held bythe user, and as it moves with the user, the position and the posturemay be changed.

<4-2. Second Modification>

Moreover, the information processing apparatus 1 may include a sensorthat senses information around the information processing apparatus 1 inaddition to the imaging unit 30 illustrated in FIG. 1. Furthermore,sensor data obtained by sensing by the sensor, or data estimated basedon the sensor data may be input to the filter unit 140 as data relatingto a position or a posture. For example, the information processingapparatus 1 may include a depth sensor that acquires depth data, an IMU(inertial measurement unit) that acquires an angular speed or anacceleration speed, and the like.

<4-3. Third Modification>

In the above description, an example in which data indicating changesover time of output data is used as the temporal change data has beendescribed, but the present embodiment is not limited to the example. Forexample, the input speed signal may be used as the temporal changesignal. Moreover, as described above, when the information processingapparatus 1 includes a sensor other than the imaging unit 30, dataindicating changes over time of a position and a posture acquired basedon sensing of the sensor may be used as the temporal change data. Forexample, the change detecting unit 143 may detect an abrupt change of aposition and a posture estimated based on a capture image, based on thetemporal change data acquired by sensing of the IMU, and with such aconfiguration, an abrupt change can be detected more accurately.

5. HARDWARE CONFIGURATION EXAMPLE

As above the embodiment of the present disclosure has been described.Finally, a hardware configuration of the information processingapparatus 1 according to the present embodiment will be described,referring to FIG. 5. FIG. 5 is a block diagram illustrating an exampleof the hardware configuration of the information processing apparatus 1according to the present embodiment. The information processing by theinformation processing apparatus 1 according to the present embodimentis implemented by cooperation of software and hardware described below.

As illustrated in FIG. 5, the information processing apparatus 1includes a CPU (central processing unit) 901, a ROM (read-only memory)902, a RAM (random access memory) 903, and a host bus 904 a. Moreover,the information processing apparatus 1 includes a bridge 904, anexternal bus 904 b, an interface 905, an input device 906, an outputdevice 907, a storage device 908, a drive 909, a connection port 911, acommunication device 913, and a sensor 915. The information processingapparatus 1 may include a processing circuit, such as a DSP or an ASIC,in place of or together with the CPU 901.

The CPU 901 functions as an arithmetic processing device and a controldevice, and controls overall operation in the information processingapparatus 1 according to various kinds of programs. Furthermore, the CPU901 may be a microprocessor. The ROM 902 stores a program and arithmeticparameters used by the CPU 901, and the like. The RAM 903 temporarilystores a program used in execution by the CPU 901, and parameters thatchanges as appropriate in the execution, and the like. The CPU 901 canform, for example, the control unit 100.

The CPU 901, the ROM 902, and the RAM 903 are connected to one anotherby the host bus 904 a including a CPU bus. The host bus 904 a isconnected to the external bus 904 b, such as a PCI (peripheral componentinterconnect/interface) through the bridge 904. Note that the host bus904 a, the bridge 904, and the external bus 904 b are not necessarilyrequired to be configured separately, but the functions thereof may beimplemented by one bus.

The input device 906 is implemented by a device to which data is inputby the user, such as a mouse, a keyboard, a touch panel, a button, amicrophone, a switch, and a lever. Moreover, the input device 906 may bea remote control device using an infrared ray or other radio waves, ormay be an external connecting device, such as a mobile phone and a PDA,that supports an operation of the information processing apparatus 1.Furthermore, the input device 906 may include an input control circuitthat generates an input signal based on data input by the user, forexample, by using the input means described above, and outputs it to theCPU 901. The user of the information processing apparatus 1 can inputvarious kinds of data to the information processing apparatus 1, or toinstruct processing operations by operating this input device 906.

The output device 907 is formed by a device capable of visually oraurally notifying about the acquired data to the user. Such a deviceincludes a display device, such as a CRT display device, a liquidcrystal display device, a plasma display device, an EL display device,and a lamp, a voice output device, such as a speaker and a headphone, aprinter device, and the like. The output device 907 outputs a resultobtained by various kinds of processing performed by the informationprocessing apparatus 1. Specifically, the display device visuallydisplays the result obtained by various kinds of processing performed bythe information processing apparatus 1 in various forms, such as test,image, table, and a graph. On the other hand, the voice output deviceconverts an audio signal constituted of reproduced voice data, acousticdata, and the like into an analog signal to aurally output it. Theoutput device 907 can form, for example, the display unit 40.

The storage device 908 is a device for data storage, formed as anexample of the storage unit of the information processing apparatus 1.The storage device 908 is implemented by, for example, a magnetic memorydevice, a semiconductor memory device, an optical memory device, amagneto-optical memory device, or the like. The storage device 908 mayinclude a recording medium, a recording device that records data in therecording medium, a reading device that reads data from a recordingmedium, a deleting device that deletes data recorded in the recordingmedium, and the like. This storage device 908 stores a program that isexecuted by the CPU 901, various kinds of data, various kinds of dataexternally acquired, and the like. The storage device 908 can form, forexample, the storage unit 50.

The drive 909 is a recording medium reader/writer, and is equipped inthe information processing apparatus 1, or mounted externally. The drive909 reads data stored in a removable recording medium, such as amagnetic disk, an optical disk, a magneto-optical disk, or asemiconductor memory, and outputs it to the RAM 903. Furthermore, thedrive 909 can write data into the removable recording medium also.

The connection port 911 is an interface connected to an external device,and is a port to connect with an external device capable of transmittingdata by, for example, a USB (universal serial bus), or the like.

The communication device 913 is a communication interface formed, forexample, with a communication device to connect to a network 920 or thelike. The communication device 913 is, for example, a communication cardfor wired or wireless LAN (local area network), an LTE (long termevolution), Bluetooth (registered trademark), or WUSB (wireless USB), orthe like. Moreover, the communication device 913 may be a router foroptical communications, a router for ADSL (asymmetric digital subscriberline), a modem for various kinds of communications, or the like. Thiscommunication device 913 can transmit and receive a signal and the like,conforming to a predetermined protocol, such as TCP/IP, on the Internet,or with other communication devices. The communication device 913 canform, for example, the communication unit 20.

The sensor 915 is, for example, various kinds of sensors, such as acamera, a microphone, an acceleration sensor, a gyro sensor, ageomagnetic sensor, an optical sensor, a range sensor (time-of-flightsensor, structured light sensor, infrared sensor, LIDAR sensor, and thelike), and a force sensor. The sensor 915 acquires information about astate of the information processing apparatus 1 itself, such as aposture and a traveling speed of the information processing apparatus 1,and information relating to an ambient environment of the informationprocessing apparatus 1, such as brightness and noise around theinformation processing apparatus 1. Moreover, the sensor 915 may includea GPS sensor that receives a GPS signal to measure a latitude,longitude, and an altitude of the device. The sensor 915 can form, forexample, the imaging unit 30.

The network 920 is a wired or wireless transmission path of datatransmitted from the devices connected to the network 920. For example,the network 920 may include a public network, such as the Internet, atelephone network, and a satellite communication network, various kindsof LAN (local area network) including Ethernet (registered trademark), aWAN (wide area network), and the like. Furthermore, the network 920 mayinclude a dedicated network, such as IP-VPN (Internet protocol-virtualprivate network).

As above, one example of the hardware configuration that can implementthe functions of the information processing apparatus 1 according to theembodiment of the present disclosure has been described. The respectivecomponents may be implemented by using general-purpose parts, or may beimplemented by hardware specialized in functions of the respectivecomponents. Therefore, according to a technical level at each time whenthe embodiment of the present disclosure is implemented, the hardwareconfiguration to be applied can be changed as appropriate.

Note that a computer program to implement respective functions of theinformation processing apparatus 1 according to the embodiment of thepresent disclosure as described above can be built and installed in a PCor the like. Moreover, a computer-readable recording medium in whichsuch a computer program is stored can also be provided. The recordingmedium is, for example, a magnetic disk, an optical disk, amagneto-optical disk, a flash memory, or the like. Furthermore, thecomputer program described above may be distributed, for example,through a network without using a recoding medium.

6. CONCLUSION

As described above, according to the embodiment of the presentdisclosure, by performing correction relating to data of a position anda posture, considering human perceptual characteristics, it becomespossible to reduce user discomfort caused by a display based on theposition and the posture.

As above, an exemplary embodiment of the present disclosure has beendescribed in detail, referring to the accompanying drawings, but atechnical range of the present disclosure is not limited to the example.It is obvious that those having common knowledge in the technical fieldof the present disclosure can think of various alteration examples orcorrection examples within a scope of the technical idea described inclaims, and it is understood that these also belong to the technicalscope of the present disclosure naturally.

For example, respective steps in the embodiment described above are notnecessarily required to be performed chronologically according to theorder described in the flowcharts. For example, the respective steps inthe processing of the embodiment described above may be performed indifferent order from the order described in the flowcharts, or may beperformed in parallel.

Furthermore, the example in which the control unit 100 having thefunction of the filter unit 140 is implemented by the CPU or the likehas been described in the above description, but the present techniqueis not limited to the example. The function of the filter unit 140 maybe implemented as a digital filter, or may be implemented as an analogfilter.

Moreover, effects described in the present specification are onlyexplanatory or exemplary ones, and are not limited. That is, thetechnique according to the present disclosure can produce other effectsapparent from the description of the present specification to thoseskilled in the art in addition to the effects described above.

Note that configurations as described below also belong to the technicalscope of the present disclosure.

(1)

An information processing apparatus comprising:

a reducing unit that perform reduction processing to reduce a change ofany one of a position and a posture; and

a correcting unit that performs correction processing to correct areduction error that is caused by the reduction processing, based ontemporal change data indicating changes over time relating to any one ofthe position and the posture.

(2)

The information processing apparatus according to (1), furthercomprising

a lowpass filter unit that removes a component higher than a cutofffrequency from speed data according to any one of the position and theposture, to output, wherein

the reducing unit subjects the speed data output from the lowpass filterunit to the reduction processing.

(3)

The information processing apparatus according to claim 2 furthercomprising

a cutoff-frequency control unit that controls the cutoff frequency basedon at least either one of a dimension according to the speed data, andthe temporal change data.

(4)

The information processing apparatus according to (2) or (3), furthercomprising

a change detecting unit that detects a change section in which thechange has occurred, wherein

the reducing unit brings a value included in the change section that isdetected by the change detecting unit in the speed data to 0.

(5)

The information processing apparatus according to any one of (2) to (4),wherein

the reduction error is acquired based on the speed data output from thelowpass filter unit and on data acquired as a result of the reductionprocessing.

(6)

The information processing apparatus according to any one of (1) to (5),wherein

the correcting unit performs the correction processing such that thereduction error is corrected more intensely as the temporal changebecomes larger.

(7)

The information processing apparatus according to any one of (1) to (6),wherein

the temporal change data is data that indicates a temporal change ofoutput data acquired as a result of the correction processing.

(8)

The information processing apparatus according to any one of (1) to (7),wherein

any one of the position and the posture is estimated based on an imageacquired by imaging.

(9)

The information processing apparatus according to (8), furthercomprising

an estimating unit that estimates any one of the position and theposture based on feature points detected from the image.

(10)

The information processing apparatus according to any one of (1) to (9),further comprising

a display control unit that controls display based on output dataacquired as a result of the correction processing.

(11)

An information processing method comprising: performing reductionprocessing to reduce a change of any one of a position and a posture;and

performing correction processing to correct a reduction error that iscaused by the reduction processing, based on temporal change dataindicating changes over time relating to any one of the position and theposture.

(12)

A computer-readable recording medium that stores a program to implement:

a function of performing reduction processing to reduce a change of anyone of a position and a posture; and

a function of performing correction processing to correct a reductionerror that is caused by the reduction processing, based on temporalchange data indicating changes over time relating to any one of theposition and the posture.

REFERENCE SIGNS LIST

-   -   1 INFORMATION PROCESSING APPARATUS    -   20 COMMUNICATION UNIT    -   30 IMAGING UNIT    -   40 DISPLAY UNIT    -   50 STORAGE UNIT    -   100 CONTROL UNIT    -   120 ESTIMATING UNIT    -   140 FILTER UNIT    -   141 LOWPASS FILTER UNIT    -   142 CUTOFF-FREQUENCY CONTROL UNIT    -   143 CHANGE DETECTING UNIT    -   144 REDUCING UNIT    -   145 SUBTRACTING UNIT    -   146 CORRECTING UNIT    -   160 DISPLAY CONTROL UNIT

The invention claimed is:
 1. An information processing apparatus,comprising: a lowpass filter unit configured to: remove a component,higher than a cutoff frequency of the lowpass filter unit, from firstspeed data based on at least one of a position of the informationprocessing apparatus or a posture of the information processingapparatus; and output second speed data based on the removal of thecomponent higher than the cutoff frequency; a reducing unit configuredto: execute a reduction process to reduce a change of the at least oneof the position or the posture, wherein the reduction process isexecuted based on the second speed data; and acquire reduction databased on the execution of the reduction process; a subtraction unitconfigured to calculate a reduction error based on a difference betweena displacement signal and the reduction data, wherein the displacementsignal corresponds to the second speed data output from the lowpassfilter unit; and a correcting unit configured to execute a correctionprocess to correct the reduction error, wherein the correction processis executed based on temporal change data, and the temporal change dataindicates a temporal change associated with the at least one of theposition or the posture.
 2. The information processing apparatusaccording to claim 1, wherein the reducing unit is further configured toexecute the reduction process on the second speed data.
 3. Theinformation processing apparatus according to claim 2, furthercomprising a cutoff-frequency control unit configured to control thecutoff frequency based on at least one of the temporal change data, or adimension associated with the second speed data.
 4. The informationprocessing apparatus according to claim 2, further comprising a changedetecting unit configured to detect a change section, wherein the changesection corresponds to the change in the at least one of the position orthe posture, and the reducing unit is further configured to reduce avalue of the second speed data included in the change section to zero.5. The information processing apparatus according to claim 1, whereinthe correcting unit is further configured to execute the correctionprocess such that an intensity of the correction of the reduction errorincreases as the temporal change increases.
 6. The informationprocessing apparatus according to claim 1, wherein the correction unitis further configured to output specific data based on the execution ofthe correction process, and the temporal change data indicates thetemporal change of the output specific data.
 7. The informationprocessing apparatus according to claim 1, further comprising anestimating unit configured to estimate the at least one of the positionor the posture based on an image.
 8. The information processingapparatus according to claim 7, wherein the estimating unit is furtherconfigured to estimate the at least one of the position or the posturebased on feature points of the image.
 9. The information processingapparatus according to claim 1, further comprising a display controlunit, wherein the correction unit is further configured to outputspecific data based on the execution of the correction process, and thedisplay control unit is configured to control display of an object basedon the output specific data.
 10. An information processing method,comprising: removing a component, higher than a cutoff frequency of alowpass filter unit, from first speed data based on at least one of aposition of an information processing apparatus or a posture of theinformation processing apparatus; outputting, by the lowpass filterunit, second speed data based on the removal of the component higherthan the cutoff frequency; executing a reduction process to reduce achange of the at least one of the position or the posture, wherein thereduction process is executed based on the second speed data; acquiringreduction data based on the execution of the reduction process;calculating a reduction error based on a difference between adisplacement signal and the reduction data, wherein the displacementsignal corresponds to the second speed data output from the lowpassfilter unit; and executing a correction process to correct the reductionerror, wherein the correction process is executed based on temporalchange data, and the temporal change data indicates a temporal changeassociated with the at least one of the position or the posture.
 11. Anon-transitory computer-readable medium having stored thereon,computer-executable instructions, which when executed by a processor,cause the processor to execute operations, the operations comprising:removing a component, higher than a cutoff frequency of a lowpass filterunit, from first speed data based on at least one of a position of aninformation processing apparatus or a posture of the informationprocessing apparatus; outputting, by the lowpass filter unit, secondspeed data based on the removal of the component higher than the cutofffrequency; executing a reduction process to reduce a change of the atleast one of the position or the posture, wherein the reduction processis executed based on the second speed data; acquiring reduction databased on the execution of the reduction process; calculating a reductionerror based on a difference between a displacement signal and thereduction data, wherein the displacement signal corresponds to thesecond speed data output from the lowpass filter unit; and executing acorrection process to correct the reduction error, wherein thecorrection process is executed based on temporal change data, and thetemporal change data indicates a temporal change associated with the atleast one of the position or the posture.